<?
session_start();
ob_implicit_flush(true);
ini_set(max_execution_time, 200);
echo "Wartungscript Version 0.2";
include("conf/main.conf.php");
include("class/mysql.class.php");
if($_REQUEST[id]==$_SESSION[wartung][id]){
    print_r( $_POST );
	echo "<br>starting maintenance script #".$_SESSION[wartung][id];
	echo "<br>connecting to database...";
    $db = new database($config_db_hostname, $config_db_uname, $config_db_upass);
	$db->selectDB("game");
	echo "verbunden";
    //Part 1 - Abhängigkeiten
	echo "<br><b>Überprüfe abhängigkeiten</b>";
	$spieler=0;
	$planet_result=$db->query("SELECT * FROM planet WHERE Spieler>0 ORDER BY Spieler;");
	while($planet_row=$db->fetch_assoc($planet_result)){
		if(!$spieler=$db->fetch_assoc($db->query("SELECT * FROM spieler WHERE Id=$planet_row[Spieler];"))){
			echo "<br> - Planet $planet_row[Id] ist nicht mit einem Spieler verbunden<br>";
		}else{
			echo ".";
		}
	}
    //Part 2 - Logiles löschen
    if($_POST[logfiles]=="on"){
       echo "<br><b>Erasing logfiles</b>";
       $folder[]="logs/berichte/";
       $folder[]="logs/kommander/";       
    }
    //Part 3 - Systemnachrichten löschen
    if($_POST[logfiles]=="on"){
       echo "<br><b>Systemmails</b>";
       $db->query("DELETE FROM mail WHERE AbsenderId=0 AND Zeit<".(date(U)-(3600*24*30)));
       $rows=$db->affected_rows();
       echo "...done (found $rows)";
    }
        //Part 3 - Systemnachrichten löschen
    if($_POST[uploads]=="on"){
        $search[mail]="Text";
        $search[posts]="Text";
        $dir="data/uploads";
        $dh = opendir($dir);
        while(($file = readdir($dh)) !== false){
            if(ereg(".*\.[png|gif|jpg]","$dir/$file")){
                $found=false;
                foreach($search AS $table=>$str){
                    $db->query("SELECT Id FROM $table WHERE $str LIKE '%$file%';");
                    if($db->affected_rows()>0){
                        $found=true;
                    }
                }
                if($found){
                    echo ".";
                }else{
                    echo "<br>$file not found->erased";
                }
            }//ende datei ist kein ordner
        }//ende ordner durchlaufen
        closedir($dh);        
    }

    
	echo "<br>done- thanks for using";	
}
	